home *** CD-ROM | disk | FTP | other *** search
/ SPACE 2 / SPACE - Library 2 - Volume 1.iso / apps / 6 / applic / ibmpro.hex < prev    next >
Encoding:
Text File  |  1986-03-19  |  11.1 KB  |  273 lines

  1. ****************************************************************
  2. *
  3. *    IBM PROPRINTER Drive Configuration Table  v1.2  02-12-86
  4. *       By Randy Holcomb and Todd Meitzner
  5. *
  6. *    This file contains tables defining the code sequences
  7. *    to be sent to the printer to perform various functions
  8. *    and to access the characters from codes in the Atari
  9. *    character set.
  10. *
  11. *    v1.2 - pass thru codes for access to IBM printer graphics.
  12. *
  13. *    v1.1 - fix up some quirks in NLQ setup so the printer
  14. *           switches modes properly.
  15. *
  16. *    v1.0 - initial release.
  17. *
  18. *    NOTE - The Proprinter does not support an italic mode. However,
  19. *           if you roll your own italic set and download it 
  20. *           you can use the ESC I 4 and ESC I 6 sequences for
  21. *           italic on (draft) and italic on (NLQ), respectively.
  22. *           Be sure to use a similar sequence for italic off in both
  23. *           modes by looking at how bolding is done.
  24. ****************************************************************
  25.  
  26. *
  27. * Name of printer
  28. * ===============
  29. *
  30. IBM Proprinter
  31.  
  32. *
  33. * Miscellaneous configurable variables
  34. * ====================================
  35. *
  36. * 1: printer type, 0=dot matrix, 1=daisy wheel
  37. *    Note if printer type is 0 the following 4 variables are never used.
  38. * 2: unit width of one character
  39. * 3: unit height of one line
  40. * 4: Approximate middle of carriage after formfeed
  41. * 5: Carriage shift for bold overstrike
  42. *
  43. 0, 0, 0, 0, 0
  44.  
  45. *
  46. * Printer characteristics
  47. * =======================
  48. *
  49. * This table specifies the printer command sequences.
  50. * If the top bit of a code is set, then this indicates the position
  51. * of a parameter passed to the printer. The code whose top bit is set
  52. * in this table is added to the parameter passed before being sent to the
  53. * printer. It is not used in all command sequences, only in those where 
  54. * the printer requires  a variable value such as the length of a vertical 
  55. * tab.
  56. *
  57. * 0                               * Character width
  58. 1, D, A                           * Linefeed WITH return
  59. * 2                               * Forward print
  60. * 3                               * Reverse print
  61. * 4, 1B, 42, 80, 0, B             * Vertical tab to line            
  62. * 5, 1B, 44, 80, 0, 9             * Absolute horizontal tab 
  63. 6, 1B, 45                         * Draft bold on
  64. 7, 1B, 46, 1B, 49, 0              * Draft bold off
  65. 8, 1B, 45                         * NLQ bold on                                  
  66. 9, 1B, 46, 1B, 49 2               * NLQ bold off
  67. *A, 1B, 34                        * Draft italic on
  68. *B, 1B, 35                        * Draft italic off
  69. *C, 1B, 78, 0, 1B, 34, 1B, 47     * NLQ italic on
  70. * D, 1B, 48, 1B, 35, 1B, 78, 1    * NLQ italic off
  71. * E                               * Draft light on
  72. * F                               * Draft light off
  73. * 10, 1B, 78, 0                   * NLQ light on
  74. * 11, 1B, 78, 1                   * NLQ light off
  75. 12, 1B, 53, 0                     * Draft superscript on
  76. 13, 1B, 54, 1B, 49, 0             * Draft superscript off
  77. 14, 1B, 53, 0                     * NLQ superscript on
  78. 15, 1B, 54, 1B, 49, 2             * NLQ superscript off
  79. 16, 1B, 53, 1                     * Draft subscript on
  80. 17, 1B, 54, 1B, 49, 0             * Draft subscript off
  81. 18, 1B, 53, 0                     * NLQ subscript on
  82. 19, 1B, 54, 1B, 49, 2             * NLQ subscript off
  83. 1A, 1B, 2D, 1                     * Draft underline on
  84. 1B, 1B, 2D, 0, 1B, 49, 0          * Draft underline off
  85. 1C, 1B, 2D, 1,                    * NLQ underline on
  86. 1D, 1B, 2D, 0, 1B, 49, 2          * NLQ underline off
  87. 1E, C          * Formfeed
  88. 1F, 12         * Horizontal initialisation
  89. * 20           * Vertical initialisation
  90. 21, 1B, 40     * Termination: printer reset
  91. 0              * NULL termination byte
  92.  
  93. *
  94. * Translation Table
  95. * =================
  96. *
  97. * This table provides translation from single Atari input bytes into
  98. * multiple IBM printer codes, and is useful for printing extraneous
  99. * characters such as accented characters etc. All characters are 
  100. * subjected to translation, but if there is no entry in the table for
  101. * a particular code, then the original code is sent to the printer.
  102. *
  103. * The entries must be arranged in ascending order of Atari input
  104. * code. The table is NULL terminated.
  105.  
  106. 0                                  * NULL: print a space 
  107. 1, 7C, 8, 5E            * Up arrow: USA | backspace USA ^
  108. 2, 7C, 8, 76            * Down arrow: USA | backspace USA v
  109. 3, 2D, 8, 3E            * Right arrow: - backspace >
  110. 4, 3C, 8, 2D            * Left arrow: - backspace <
  111. 5             * No close box
  112. 6             * No size box
  113. 7             * No full box
  114. 8             * No tick
  115. 9             * No clock
  116. A             * No bell
  117. B             * No musical note
  118. E             * No LH Atari symbol     
  119. F             * No RH Atari symbol
  120. 10, 30        * LCD 0
  121. 11, 31        * LCD 1
  122. 12, 32        * LCD 2    
  123. 13, 33        * LCD 3
  124. 14, 34        * LCD 4
  125. 15, 35        * LCD 5
  126. 16, 36        * LCD 6
  127. 17, 37        * LCD 7     
  128. 18, 38        * LCD 8
  129. 19, 39        * LCD 9     
  130. 23, 23        * # from USA fount
  131. 24, 24        * $ from USA fount
  132. 40, 40        * @ from USA fount
  133. 5B, 5B        * [ from USA fount
  134. 5C, 5C        * \ from USA fount
  135. 5D, 5D        * ] from USA fount
  136. 5E, 5E        * ^ from USA fount
  137. 60, 60        * ' from USA fount
  138. 7B, 7B        * { from USA fount
  139. 7C, 7C        * | from USA fount
  140. 7D, 7D        * } from USA fount
  141. 7E, 7E        * ~ from USA fount
  142. 7F                       * No triangle
  143. 80, 1B, 36, 80, 1B, 37   * Capital C cedilla: C backspace ,
  144. 81, 1B, 36, 81, 1B, 37   * Lower case u umlaut from German fount
  145. 82, 1B, 36, 82, 1B, 37   * Lower case e acute from French fount 
  146. 83, 1B, 36, 83, 1B, 37   * Lower case a circumflex: a backspace USA ^
  147. 84, 1B, 36, 84, 1B, 37   * Lower case a umlaut from German fount
  148. 85, 1B, 36, 85, 1B, 37   * Lower case a grave from French fount
  149. 86, 1B, 36, 86, 1B, 37   * Lower case a boll from Danish 1 fount
  150. 87, 1B, 36, 87, 1B, 37   * Lower case c cedilla from French fount
  151. 88, 1B, 36, 88, 1B, 37   * Lower case e circumflex: e backspace USA ^
  152. 89, 1B, 36, 89, 1B, 37   * Lower case e umlaut: e backspace French umlaut
  153. 8A, 1B, 36, 8A, 1B, 37   * Lower case e grave from French fount
  154. 8B, 1B, 36, 8B, 1B, 37   * Lower case i umlaut: i backspace French umlaut
  155. 8C, 1B, 36, 8C, 1B, 37   * Lower case i circumflex: i backspace USA ^
  156. 8D, 1B, 36, 8D, 1B, 37   * Lower case i grave from Italian fount
  157. 8E, 1B, 36, 8E, 1B, 37   * Capital A umlaut from German fount
  158. 8F, 1B, 36, 8F, 1B, 37   * Capital A boll from Danish 1 fount
  159. 90, 1B, 36, 90, 1B, 37   * Capital E acute from Norwegian fount
  160. 91, 1B, 36, 91, 1B, 37   * Lower case ae dipthong from Danish 1 fount
  161. 92, 1B, 36, 92, 1B, 37   * Capital AE dipthong from Danish 1 fount
  162. 93, 1B, 36, 93, 1B, 37   * Lower case o circumflex: o backspace USA ^
  163. 94, 1B, 36, 94, 1B, 37   * Lower case o umlaut from German fount
  164. 95, 1B, 36, 95, 1B, 37   * Lower case o grave from Italian fount
  165. 96, 1B, 36, 96, 1B, 37   * Lower case u circumflex: u backspace USA ^
  166. 97, 1B, 36, 97, 1B, 37   * Lower case u grave from French fount
  167. 98, 1B, 36, 98, 1B, 37   * Lower case y umlaut: y backspace French umlaut
  168. 99, 1B, 36, 99, 1B, 37   * Capital O umlaut from German fount
  169. 9A, 1B, 36, 9A, 1B, 37   * Capital U umlaut from German fount
  170. 9B, 1B, 36, 9B, 1B, 37   * c cent: c backspace USA |
  171. 9C, 1B, 36, 9C, 1B, 37   * Pound sterling from UK fount
  172. 9D, 1B, 36, 9D, 1B, 37   * Yen from Japanese fount
  173. 9E, E1                   * Esszet from German fount
  174. 9F, 66                   * Lower case swash f: print f
  175. A0, A0                   * Lower case a acute: a backspace '
  176. A1, A1                   * Lower case i acute: i backspace '
  177. A2, A2                   * Lower case o acute: o backspace '
  178. A3, A3                   * Lower case u acute: u backspace '
  179. A4, A4                   * Lower case n tilde from Spanish fount
  180. A5, A5                   * Capital N tilde from Spanish fount
  181. A6, A6                   * Lower case a underline: a backspace underline
  182. A7, A7                   * Lower case o underline: o backspace underline
  183. A8, A8                   * Inverted ? from Spanish fount
  184. A9, A9                   * top left corner     
  185. AA, AA                   * top right corner
  186. AB, AB                   * 1/2 fraction
  187. AC, AC                   * 1/4 fraction
  188. AD, AD                   * Inverted ! from Spanish fount
  189. AE, AE                   *  <<
  190. AF, AF                   *  >>
  191. B0, 1B, 36, 83, 1B, 37   * Lower case a tilde: a backspace USA ~
  192. B1, 1B, 36, 93, 1B, 37   * Lower case o tilde: o backspace USA ~
  193. B2, B2                   * no Capital crossed O from Danish 1 fount
  194. B3, B3                   * NO Lower case crossed o from Danish 1 fount
  195. B4, B4                   * No lower case oe dipthong
  196. B5, B5                   * No capital OE dipthong
  197. B6, B6                   * No capital A grave: print A
  198. B7, B7                   * No capital A tilde: print A
  199. B8, B8                   * No capital O tilde: print O
  200. B9, B9                   * No Umlaut from French fount
  201. BA, BA                   * Acute: print '
  202. BB, BB                   * No dagger
  203. BC, 1B, 36, 14, 1B, 37   * No paragraph symbol
  204. BD, BD                   * No copyright symbol
  205. BE, BE                   * No Registered symbol
  206. BF, BF                   * No Trademark symbol
  207. C0, 1B, 36, 98, 1B, 37   * ij ligature: y backspace French umlaut
  208. C1, 59                   * Capital IJ ligature: print Y
  209. C2, C2    * B   No Hebrew...
  210. C3, C3    * C   But pass them thru anyway. These codes represent the IBM
  211. C4, C4    * D   Graphics Character set for line drawing. Sometime in the
  212. C5, C5    * E   future there will be a font that will match the IBM PC
  213. C6, C6    * F   standard and will allow these items to be directly
  214. C7, C7    * G   displayed on the screen. For now, you can click the 
  215. C8, C8    * H   matching Hebrew character from the table to do box and
  216. C9, C9    * I   line drawings thru 1st Word. (it will look weird on the
  217. CA, CA    * J   screen but come out as on the left of this text.)
  218. CB, CB    * K
  219. CC, CC    * L
  220. CD, CD    * M
  221. CE, CE    * N
  222. CF, CF    * O
  223. D0, D0    * P
  224. D1, D1    * Q
  225. D2, D2    * R
  226. D3, D3    * S
  227. D4, D4    * T
  228. D5, D5    * U 
  229. D6, D6    * V 
  230. D7, D7    * W
  231. D8, D8    * X
  232. D9, D9    * Y
  233. DA, DA    * Z
  234. DB, DB    * [
  235. DC, DC    * \
  236. DD, DD    * ]                              
  237. DE, DE    * ^ 
  238. DF, DF    * _              
  239. E0, E0    * alpha
  240. E1, E1    * Esszet from German fount     
  241. E2, E2    * YES, Greek....
  242. E3, E3
  243. E4, E4
  244. E5, E5
  245. E6, E6
  246. E7, E7
  247. E8, E8
  248. E9, E9
  249. EA, EA
  250. EB, EB
  251. EC, EC
  252. ED, ED
  253. EE, EE
  254. EF, EF
  255. F0, F0              * Equivalence p             
  256. F1, F1              * q 
  257. F2, F2              * r   
  258. F3, F3              * s
  259. F4, F4              * t                    
  260. F5, F5              * u                        
  261. F6, F6              * v                           
  262. F7, F7              * w                     
  263. F8, F8              * x                                 
  264. F9, F9    * y                  
  265. FA, FA    * z                   
  266. FB, FB    * {                   
  267. FC, FC    * |              
  268. FD, FD    * }               
  269. FE        * No superior 3
  270. FF        * No macron     
  271. 0
  272. əəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəə